/**
 * Copyright © 2016-2025 The Thingsboard Authors
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
:host {
  .tb-table-widget {
    .mat-mdc-table, .mat-mdc-paginator, mat-toolbar.mat-mdc-table-toolbar:not([color="primary"]) {
      background: transparent;
    }
    mat-toolbar {
      height: 39px;
      max-height: 39px;
      .mat-toolbar-tools {
        height: 39px;
        max-height: 39px;
      }
    }
    .table-container {
      overflow: auto;
    }

    .mat-mdc-row:not(.mat-row-select), .mat-mdc-header-row:not(.mat-row-select) {
      mat-cell:nth-child(n+2):nth-last-child(n+2), mat-footer-cell:nth-child(n+2):nth-last-child(n+2), mat-header-cell:nth-child(n+2):nth-last-child(n+2) {
        padding: 0 5px;
      }
    }

    .mat-mdc-row.mat-row-select, .mat-mdc-header-row.mat-row-select {
      mat-cell:nth-child(2), mat-footer-cell:nth-child(2), mat-header-cell:nth-child(2) {
        padding: 0 5px;
      }
      mat-cell:nth-child(n+3):nth-last-child(n+2), mat-footer-cell:nth-child(n+3):nth-last-child(n+2), mat-header-cell:nth-child(n+3):nth-last-child(n+2) {
        padding: 0 5px;
      }
    }

    .mat-mdc-tab-header-pagination-disabled .mat-mdc-tab-header-pagination-chevron {
      border-color: var(--mat-tab-header-pagination-disabled-icon-color);
    }
  }

  .mat-mdc-input-element::placeholder {
    color: var(--mat-table-header-headline-color);
  }

  .mat-mdc-table {
    .mat-mdc-header-row {
      background-color: var(--tb-orig-background-color);
    }

    .mat-mdc-cell, .mat-mdc-header-cell {
      &.mat-mdc-table-sticky {
        background-color:var(--tb-orig-background-color);
      }
    }

    .mat-mdc-row {
      background-color: rgba(0,0,0,0); 
      &.tb-current-entity {
        background-color: var(--tb-current-entity-color);
        .mat-mdc-cell.mat-mdc-table-sticky {
          background-color: var(--tb-current-entity-sticky-color);
        }
      }
      &:hover:not(.tb-current-entity){
        background-color: var(--tb-hover-color);
        .mat-mdc-cell.mat-mdc-table-sticky {
          background-color: var(--tb-hover-sticky-color);
        }
      }
      &.mat-row-select.mat-selected:not(.tb-current-entity){
        background-color: var(--tb-selected-color);
        .mat-mdc-cell.mat-mdc-table-sticky {
          background-color: var(--tb-selected-sticky-color);
        }
      }
      &, .mat-mdc-cell.mat-mdc-table-sticky {
        transition: background-color .2s;
        background-color:var(--tb-orig-background-color);
      }
    }
  } 
}

:host-context(.tb-has-timewindow) {
  .tb-table-widget {
    mat-toolbar {
      height: 65px;
      max-height: 65px;
      .mat-toolbar-tools {
        height: 65px;
        max-height: 65px;
      }
    }
  }
}
